package ipt.capitulo9;
import java.io.*;
public class LectorTeclado{
	BufferedReader teclado;
	LectorTeclado(){
		InputStreamReader f=new InputStreamReader(System.in);
		teclado = new BufferedReader(f);
	}
	public String leeTexto(String mensaje){
		System.out.print(mensaje+": ");
		try{
			return teclado.readLine();
		}catch (Exception e){
			System.out.println(e.getMessage());
		}
		return null;
	}
	public int leeEntero(String mensaje){
		boolean error=false;
		int entero=0;
		do{
			try{
				System.out.print(mensaje+": ");
				error=false;
				entero =Integer.parseInt(
				teclado.readLine());
			}catch (Exception e){
				error=true;
				System.out.println(e.getMessage());
			}
		}while(error);
		return entero;
	}
	public double leeDouble(String mensaje){
		boolean error=false;
		double numero=0;
		do{
			try{
				System.out.print(mensaje+": "); 
				error=false;
				numero=Double.parseDouble(
				teclado.readLine());
			}catch (Exception e){
				error=true;
				System.out.println(e.getMessage());
			}
		}while(error);
		return numero;
	}
	public char leeCaracter(String mensaje){
		boolean error=false;
		char letra='\0';
		do{
			try{
				System.out.print(mensaje+": ");
				error=false;
				letra=(teclado.readLine()).charAt(0);
			}catch (Exception e){
				error=true;
				System.out.println(e.getMessage());
			}
		}while(error);
		return letra;
	}
	public boolean leeBoolean(String mensaje){
		boolean error=false;
		boolean resultado=false;
		do{
			try{
				System.out.print(mensaje+": ");
				error=false;
				if((teclado.readLine()).charAt(0)==
					's' ||(teclado.readLine()).charAt(0)=='S')
					resultado = true;
			}catch (Exception e){
				error=true;
				System.out.println(e.getMessage());
			}
		}while(error);
		return resultado;
	}
}
